iT邦幫忙

2021 iThome 鐵人賽

DAY 2
1

FASTAPI建置

非常快速的簡介

過去講到PYTHON建置API,大多會想到Flask以及Django,Django 可以處理任何規模和容量的項目,可以做到更多的事,而缺點是較為肥大,Flask比較少用,就不提了,來看看FastAPI的說明:

    FastAPI 是一個容易上手,並且可以快速開發高效能 WEB API 的框架         

這一年來,API架構的話,我自己都是先選擇FASTAPI,方便快速是他的強項。
而與其搭配的是uvicorn,他是甚麼呢?

uvicorn是一個輕量級高效的web伺服器框架。

簡單的來說就是FASTAPI開發API,使用uvicorn掛載服務。

實作

都叫FASTAPI了,那我們就快速實作一個範例

  • 首先先安裝套件
pip install fastapi
pip install uvicorn
  • API開發
    簡單寫兩隻API
    • 第一支是hollo word
    • 第二支是回傳ID及字串
      建立一個main.py,程式如下:
from fastapi import FastAPI
app = FastAPI()

@app.get("/")
def read_root():
   return {"Hello": "World"}

@app.get("/items/{item_id}")
def read_item(item_id: int, q: str = None):
   return {"item_id": item_id, "q": q}

於CMD執行

uvicorn app.main:app --host 0.0.0.0 --port 8087

服務就起來囉,下面是fastapi自動建置的swagger文件
https://ithelp.ithome.com.tw/upload/images/20210924/20140924e00ttZkFMa.png
好用的postman又來囉,測看看API

  • hollo word測試
    https://ithelp.ithome.com.tw/upload/images/20210924/201409240J5c0RqBmO.png
  • 回傳ID及字串
    https://ithelp.ithome.com.tw/upload/images/20210924/20140924nKVbwIMEco.png
    再來看看剛剛呼叫API的log
    https://ithelp.ithome.com.tw/upload/images/20210924/20140924zQar5pxIwH.png
    是不是很方便阿
    今天本來要寫出配合永豐API的API實作
    但工作有點忙碌,加上想做的網頁有點卡關
    先做fastAPI的demo吧
    圖片待補

沒做好準備的話,鐵人賽很硬阿,要生出有內容的文章需要時間阿~~


上一篇
[day7]呼叫永豐API及流程串接整理
下一篇
[day9]API就位囉~串接永豐API規劃
系列文
永豐Vue一下-從生活尋找靈感30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言